#ifndef GUARD_Point_H
#define GUARD_Point_H
#include <iostream>


class Point {

    public :
    float x;
    float y;
    float z;
	float w;


    Point(float x, float y, float z);
    Point();
    Point(const Point& p);
    Point operator* (float coeff);
    Point operator+ (const Point& point) const;
    Point operator- (const Point& point) const;
    virtual void afficher(std::ostream &flux) const;
	inline float distance(const Point& p) const
    { 
        return sqrtf( (x-p.x) * (x-p.x) +  (y-p.y) * (y-p.y) + (z-p.z) * (z-p.z));
    }

   float & operator[] (unsigned i);
};


#endif

